联邦学习,无疑是当前最受工业界和学术界关注的人工智能研究方向之一。
近两年,在杨强教授等世界级专家的联合推动下,国内外多数科技巨头,均已开始搭建联邦学习的研究与应用团队。
基于此,雷锋网《AI金融评论》与《AI科技评论》联合邀请五位顶尖联邦学习专家,启动《金融联邦学习公开课》。其中在昨日的首节公开课上,微众银行首席AI官杨强教授分享了《联邦学习前沿与应用价值讨论》。(课程全文与视频回顾,将在公众号《AI金融评论》发布)
今天,我们先来完整回顾下联邦学习诞生三年来,从“自给自足”的To C模式,到企业之间互联互通的To B模式,再到金融、医疗、安防等全场景应用的过程。
联邦学习的概念,首次提出是在2017年的一篇Google AI Blog博文。
文章作者之一是Blaise Aguëray Arcas,他2014年加入谷歌,此前在微软任杰出工程师。加入谷歌后,Blaise领导了谷歌设备端on-device机器智能(Machine Intelligence)项目,同时负责基础研究与新产品研发工作。
在他加入谷歌后不久,便开始了联邦学习的研究。直到2017年,当他们取得了一定的成果,才在博文中进行公布。
Blaise 等人(或许也在某种程度上代表谷歌)所关注的,更多是设备上的联邦学习——这也正是联邦学习概念被提出之初的应用场景。
由于神经网络仍然受到学习效率的限制,它需要大量的数据进行训练,所以一些大公司,如谷歌、微软、亚马逊等开始提供人工智能服务时需要收集大量的数据,才能去训练大型神经网络。这也是一直以来,整个社区所做的事情。
对于设备端(例如手机)的智能应用,通常情况下的模式是,用户在设备上产生的数据会被上传到服务器中,然后由部署在服务器上的神经网络模型根据收集到的大量数据进行训练得到一个模型,服务商根据这个模型来为用户提供服务。随着用户设备端数据的不断更新并上传到服务器,服务器将根据这些更新数据来更新模型。很明显这是一种集中式的模型训练方法。
然而这种方式存在几个问题:1)无法保证用户的数据隐私,用户使用设备过程中产生的所有数据都将被服务商所收集;2)难以克服网络延迟所造成的卡顿,这在需要实时性的服务(例如输入法)中尤其明显。
Blaise等人便想,是否可以通过做一个大型的分布式的神经网络模型训练框架,让用户数据不出本地(在自己的设备中进行训练)的同时也能获得相同的服务体验。
解决之道便是:上传权重,而非数据。
我们知道神经网络模型是由不同层的神经元之间连接构成的,层与层之间的连接则是通过权重实现的,这些权重决定了神经网络能够做什么:一些权重是用来区分猫和狗的;另一组则可以区分桌子和椅子。从视觉识别到音频处理都是由权重来决定的。神经网络模型的训练本质上就是在训练这些权重。
那么Blaise提出的设备端联邦学习,不再是让用户把数据发送到服务器,然后在服务器上进行模型训练,而是用户本地训练,加密上传训练模型(权重),服务器端会综合成千上万的用户模型后再反馈给用户模型改进方案。
这里或许值得强调,这种在设备端上的模型是经压缩过的,而非像服务器中那种大型神经网络模型。因此模型训练的耗能是非常小的,几乎检测不到。
此外,Blaise讲了一个非常形象的比喻,即人会在睡觉的时候通过做梦来更新自己的大脑认知系统;同样设备终端的系统也可以通过闲置时进行模型训练和更新。所以整体上,这并不会对用户的使用体验造成任何影响。
总结一下设备上联邦学习的过程:
设备端下载当前版本的模型;
通过学习本地数据来改进模型;
把对模型的改进,概括成一个比较小的更新;
该更新被加密发送到云端;
与其他用户的更新即时整合,作为对共享模型的改进。
整个过程有三个关键环节:
根据用户使用情况,每台手机在本地对模型进行个性化改进;
形成一个整体的模型修改方案;
应用于共享的模型。该过程会不断循环。
其优点显而易见:
首先,数据可以不上传云端,服务提供商看不到用户数据,这能提高用户数据隐私性。因此也就不必在隐私和功能之间权衡,可以两者兼有。这一点在当下数据隐私越来越受到重视的情况下特别重要。
其次,延时降低。如果将用户所有数据都上传到云端,且服务本身也是从云端进行反馈,那么在网速较慢的环境下,网络延时将会极大降低用户体验。而联邦学习加持下的服务则不会出现这种情况,因为服务本身就来自于本地。
同时,联邦学习的出现,也使得用户从人工智能的旁观者,真正转变为人工智能发展的参与者。
其实Google的联邦学习,并没有解决企业之间数据孤岛问题。
Google的方案可以理解为To C的,应用在用户的手机端,是同一家公司根据内部对To C业务的需求所产生的一套用以解决数据隐私问题的方案。
而杨强教授牵头建设的联邦学习生态更多是To B模式,用以解决企业与企业之间的数据孤岛难题,是一个更开放的类似企业联盟的生态。
总体而言,Google的联邦学习方案是横向的,它使用的数据特征相同,因此只需要建同一个模型。
而新方案则是纵向联邦学习,不同企业之间的数据特征往往不同,所以即便面向的用户是相同的场景,整个技术方案和实施框架也不一样。
杨强教授曾在雷锋网承办的CCF-GAIR 2019「AI 金融专场」的大会报告中指出,利益驱使下,各家公司们过去并不愿意把数据拿出来和其他公司交换。除了少数几家拥有海量用户、具备产品和服务优势的「巨无霸」公司外,大多数企业难以以一种合理合法的方式跨越人工智能落地的数据鸿沟,或者对于他们来说需要付出巨大的成本来解决这一问题。
此外,监管当局已经采取颇为严格的隐私保护措施。
去年5月份欧洲首先提出数据隐私保护法GDPR,对人工智能机器的使用、数据的使用和数据确权,都提出非常严格的要求,以至于Google被多次罚款,每次金额都在几千万欧元左右。
因为GDPR其中一则条文就是数据使用不能偏离用户签的协议,也许用户的大数据分析,可以用作提高产品使用体验,但是如果公司拿这些数据训练对话系统,就违反了协议。如果公司要拿这些数据做另外的事,甚至拿这些数据和别人交换,前提必须是一定要获得用户的同意。
另外还有一些严格的要求,包括可遗忘权,就是说用户有一天不希望自己的数据用在你的模型里了,那他就有权告诉公司,公司有责任把该用户的数据从模型里拿出来。这种要求不仅在欧洲,在美国加州也实行了非常严格的类似的数据保护法。
中国对数据隐私和保护也进行了非常细致的研究,从2009年到2019年有一系列动作,而且越来越严格,经过长期的讨论和民众的交互,可能近期会有一系列正式的法律出台。
其次,我们的数据大部分是小数据:没有好的模型就无法做到好的自动化,好的模型往往需要好的大数据,但往往高质量、有标签的数据都是小数据。
而且数据都在变化,每个阶段的数据和上一个阶段的数据有不同的分布,也许特征也会有不同。实时标注这些数据想形成好的训练数据又需要花费很多人力。
当前,大多数应用领域均存在数据有限且质量较差的问题,在某些专业性很强的细分领域(如医疗诊断)更是难以获得足以支撑人工智能技术实现的标注数据。
三是“对抗学习”的挑战。即针对人工智能应用的作假,比如人脸识别就可以做假,针对面部进行合成。如何应对这种“对抗学习”的挑战,这是金融场景下人工智能安全领域的重大题目。
不仅金融场景,在法律场景也是这样,医疗场景更是如此。每个医院的数据集都是有限的,如果不能把这些数据打通,每个数据集就只能做简单的模型,也不能达到人类医生所要求的高质量的疾病识别。
在这样的困境中,不少人觉得人工智能的冬天也许又一次到来了——但在联邦学习研究者看来,这正是一次技术跃迁的良机。
杨强这样形容联邦学习的精髓:
我们每个人的大脑里都有数据,当两个人在一起做作业或者一起写书的时候,我们并没有把两个脑袋物理性合在一起,而是两个人用语言交流。所以我们写书的时候,一个人写一部分,通过语言的交流最后把合作的文章或者书写出来。
我们交流的是参数,在交流参数的过程中有没有办法保护我们大脑里的隐私呢?是有办法的,这个办法是让不同的机构互相之间传递加密后的参数,以建立共享的模型,数据可以不出本地。
从简单定义来讲,联邦学习是在本地把本地数据建一个模型,再把这个模型的关键参数加密,这种数据加密传到云端也没有办法解密,因为他得到的是一个加密数据包,云端把几千万的包用一个算法加以聚合,来更新现有的模型,然后再把更新后的模型下传。重要的是,整个过程中Server云端不知道每个包里装的内容。
之前这种做法比较困难,但同态加密的出现让运算效率取得了重大提升,即加密算法可以隔着加密层去进行运算。不过需要注意的是这只是2C的例子,是云端面对大用户群的例子。
它可以把多项式的加密,分解成每项加密的多项式,A+B的加密,变成A的加密加B的加密,这是非常伟大的贡献。因为这样就使得我们可以拿一个算法,在外面把算法给全部加密,加密的一层可以渗透到里面的每个单元。能做到这一点就能改变现有的机器学习的教科书,把任何算法变成加密的算法。
对于横向、纵向和迁移联邦学习,杨强给出了如下解释:
横向联邦学习是每行过来都可以看作一个用户的数据。按照用户来分,可以看作一、二、三个手机,它叫横向学习。还有一个原因是它们的纵向都是特征,比如手机型号、手机使用时间、电池以及人的位置等,这些都是特征。他们的特征都是一样的,样本都是不一样的,这是横向联邦学习。
主要做法是首先把信用评级得到,然后在加密状态下做聚合,这种聚合里面不是简单的加,而是很复杂的加,然后把征信模型再分发下来。
大家的Feature不一样,一个机构红色、一个机构蓝色,大家可以想象两个医院,一个病人在红色医院做一些检测,在蓝色的医院做另外一些检测,当我们知道这两个医院有同样一群病人,他们不愿意直接交换数据的情况下,有没有办法联合建模?
它们中间有一个部门墙,我们可以在两边各自建一个深度学习模型,建模的时候关键的一步是梯度下降,梯度下降我们需要知道几个参数,上一轮参数、Loss(gradients)来搭配下一个模型的weight参数。
这个过程中我们需要得到全部模型的参数级,这时候需要进行交换,交换的时候可以通过同态加密的算法,也可以通过secure multiparty computation,这里面有一系列的算法,两边交换加密参数,对方进行更新,再次交换参数,一直到系统覆盖。
它们在特征上一样,或者在特征上不一样,但是他们的用户有些是有交集的,当用户和特征没有交集时,我们退一步想,我们可以把他们所在的空间进行降维或者升维,把他们带到另外的空间去。
在另外的空间可以发现他们的子空间是有交互的,这些子空间的交互就可以进行迁移学习。虽然他们没有直接的特征和用户的重合,我们还是可以找到共性进行迁移学习。
总的来说,联邦学习的这种思想,事实上并不仅仅适用于设备用户数据的隐私保护和模型更新。
我们将设备用户抽象来看,视作数据的拥有者,可以是手机持有者,也可以是公司、医院、银行等;而服务器或云端视作模型共享综合平台。
作为一种新的学习范式,联邦学习具有以下特点:
在联邦学习的框架下,各参与者地位对等,能够实现公平合作;
数据保留在本地,避免数据泄露,满足用户隐私保护和数据安全的需求;
能够保证参与各方在保持独立性的情况下,进行信息与模型参数的加密交换,并同时获得成长;
建模效果与传统深度学习算法建模效果相差不大;
联邦学习是一个「闭环」的学习机制,模型效果取决于数据提供方的贡献。
这样一个直接命中人工智能发展痛点的新技术,也开始进入到各大应用场景当中。
联邦学习与金融信贷风控
在众多金融业务环节中,饱受数据隐私和孤岛效应困扰的信贷风控,无疑是实现联邦学习落地的最佳场景之一。
微众银行联邦学习团队指出,基于联邦学习的信贷风控解决方案,能够“在建模过程中,双方交换梯度值,类似于方向向量的概念,交换的是中间变量,不是原始数据。同时对这个中间变量还进行了同态加密,所以数据并不会出库,保证数据源和应用方的数据安全。”
联邦学习所采用的局部数据收集和最小化原则,将降低传统中心化机器学习方法带来的一些系统性隐私风险和成本,这样的效果也正契合了信贷风控的提升方向。
总的来说,这一做法是试图通过联邦数据网络进行信贷风控增强,在贷前环节利用更丰富的数据信息综合判断客户风险,帮助信贷公司过滤信贷黑名单或明显没有转化的贷款客户,进一步降低贷款审批流程后期的信审成本。
在贷中,采用联邦学习的解决方案主要提供根据用户放款后的行为变化进行的风险评估产品,帮助放贷机构进行调额调价的辅助决策。
对于贷后风险处置,方案则提供可以根据客户的行为进行催收预测的产品,帮助放贷机构进行催收的策略评估,调整催收策略,提升催收效率。
微众联邦学习团队表示,在具体实施上,解决方案会先行使用联邦学习云服务进行业务冷启动,并通过建立业务及AI模型闭环,小样本建模,后期持续迭代优化模型的方式,实现项目数字化,便于消费金融业务方及信贷合作方能够持续积累业务数据优化联邦模型。
以微众银行与合作伙伴公司的情况为例,微众的特点是有很多用户Y,数据集可分为X和Y,X是用户的特征和行为,Y是最后的结论,我们在银行的结论是信用逾期是否发生,这是逾期概率,合作的伙伴企业可能是互联网企业或者是卖车的或者卖保险,不一定有结论数据Y,但是它有很多行为信息X。
现在这两个领域对于同一批用户如果要建模,属于纵向联邦学习,建立纵向联邦学习的应用,最后就取得了很好的效果,AUC指标大为上升,不良率大为下降。
通过合法合规的多维度联邦数据建模,风控模型效果约可提升12%,相关企业机构有效节约了信贷审核成本,整体成本预计下降5%-10%,并因数据样本量的提升和丰富,风控能力进一步增强。
对合作方信贷机构而言,信贷风控能力也大幅度提升。
通过初审筛选掉黑名单和不可能转化贷款客户,在“信审漏斗第一步”减去无效客户,从而在信贷预审阶段使单接口调用成本预计节省20-30%,有效控制了信贷审核成本。
联邦学习与医疗AI
作为医疗AI成长道路不可或缺的“粮食”,数据一直是医疗AI落地的“拦路虎”。
医疗健康数据领域长期存在“信息孤岛”问题,不同地区甚至不同医院间的医疗数据没有互联,也没有统一的标准。与此同时,数据安全问题也存在着巨大挑战。
就在昨日,腾讯天衍实验室公开宣布,其联合微众银行研发的医疗联邦学习,在脑卒中预测的应用上,准确率在相关数据集中高达80%。
联邦学习可以绕过医疗机构之间的信息壁垒,不考虑将各自数据做合并,而是通过协议在其间传递加密之后的信息,该加密过程具有一定的隐私保护机制,保证加密后的信息不会产生数据泄露。各个医疗机构通过使用这些加密的信息更新模型参数,从而实现在不暴露原始数据的条件下使用全部患者数据的训练过程。
举例来说,假设医院 A 和 B 想联合训练一个脑卒中疾病预测模型,两个医院各自掌握科研病例数据,此外,医院 B 还拥有模型需要预测的标签数据如脑卒中发病标签。出于数据隐私保护和安全考虑,医院A和 B无法直接进行数据交换。联邦学习系统则可以利用基于加密的患者样本对齐技术,在医院 A 和 B 不公开各自数据的前提下确认双方的共有患者,并且不暴露不互相重叠的患者,以便联合这些用户的特征进行建模,在确定共有用户群体后,就可以利用这些数据训练疾病预测模型。
在这样的一种方式下,联邦学习技术就实现了保护不同医院数据隐私的疾病预测模型,而这项技术也在疾病预测领域落地,天衍实验室和微众银行成功构建了一个“脑卒中发病风险预测模型”。
通过使用来自就诊记录数量TOP5的医院真实就诊数据验证,联邦学习模型和集中训练模型表现几乎一致,在脑卒中预测模型中的准确率达到80%,仅比集中训练模型准确率降低1%。
同时,联邦学习技术显著提升了不同医院的独立模型效果,特别是,对于两家脑卒中确诊病例数量较少的医院而言,联邦学习分别提升其准确率10%和20%以上。
除疾病预测模型外,双方还会围绕联邦学习在医疗大数据领域的应用落地进行更多维度的合作,包括医保控费、合理诊断、精准医疗等领域,例如通过联邦学习助力电子健康卡实现保护用户隐私建模等等,进而促进医疗健康产业发展,提升医疗服务的质量。
而在2019年医学影像分析顶会MICCAI中,联邦学习在医学影像上的应用正式进入研究者的视野。
英伟达与伦敦国王学院以及一家法国初创公司Owkin合作,在新成立的伦敦医学影像与人工智能中心中应用了联邦学习技术。
由于医疗数据的隐私规定,在集中数据湖中收集和共享患者数据通常是不可行的。这就给训练机器学习算法带来了挑战,例如深度卷积网络通常需要大量不同的训练示例。
联邦学习通过将代码带给患者数据所有者,并且只在他们之间共享中间模型训练的信息,从而避开了这一困难。尽管适当地聚合这些模型可以获得更高精度的模型,但共享的模型可能会间接泄漏本地训练数据。
这项技术论文提出了一个用于脑肿瘤分割的联邦学习系统,探讨了在联邦学习系统中应用微分隐私技术来保护病人数据的可行性。
此次试验是基于取自BraTS 2018数据集的脑肿瘤分割数据实施的,BraTS 2018 数据集包含有285位脑肿瘤患者的MRI扫描结果。
研究人员表示:“联邦学习在无需共享患者数据的情况下,即可实现协作与分散化的神经网络训练。各节点负责训练其自身的本地模型,并定期提交给参数服务器。服务器不断累积并聚合各自的贡献,进而创建一个全局模型,分享给所有节点。”
研究人员进一步解释道,虽然联邦学习可以保证极高的隐私安全性,但通过模型反演,仍可以设法使数据重现。为了帮助提高联邦学习的安全性,研究人员研究试验了使用ε-差分隐私框架的可行性。这个框架是一种正式定义隐私损失的方法,可以借助其强大的隐私保障性来保护患者与机构数据。
NVIDIA团队解释到,联邦学习有望有效聚合各机构从私有数据中本地习得的知识,从而进一步提高深度模型的准确性、稳健性与通用化能力。
英伟达与伦敦国王学院研究人员在MICCAI上介绍了联邦学习技术的更多实施细节:
深度学习神经网络在多种医学应用中都显示出很好的效果,但它高度依赖于训练数据的数量和多样性。在医学成像方面,这构成了一种特殊困难:例如,由于患者数量或病理类型的原因,所需的训练数据可能无法在单个机构中获得。同时,由于医疗数据隐私规定,在集中数据湖中收集和共享患者数据通常是不可行的。
联邦学习则允许在不共享患者数据的情况下对DNN进行合作和分布式训练。每个节点都训练自己的本地模型,并定期将其提交给参数服务器。服务器收集并聚合各个节点模型以生成一个全局模型,然后与所有节点共享。
需要注意的是,训练数据对每个节点都是私有的,在学习过程中不会被共享。只共享模型的可训练权重或更新,从而保持患者数据的私密性。因此,联邦学习简洁地解决了许多数据安全挑战,将数据放在需要的地方,并支持多机构协作。
论文也披露了客户端模型训练过程、服务器端模型聚合过程、部署在客户端的隐私保护模块,以及联邦学习实验项目的配置与实验结果。研究人员表示,未来他们将探索用于医学图像分析任务的微分隐私SGD算法。
安防,是目前计算机视觉变现最快的领域。
宇视科技CEO张鹏国曾在接受雷锋网专访时提到,“当前AI安防落地能力与用户需求存有较大差距,前者还需面对数据隐私保护与安全管控、低成本、流程再造、组织变革等挑战。”
具体来看,最为核心的痛点是,数据不够多元,且异常封闭。
中国拥有庞大的人口数量、用户量及图像采集点,相关企业得到数据之后经过筛选、过滤、叠加、组合,会对自身算法效果有阶段性提升。
但这类提升属于个人式的、微乎其微式的。
每个安防厂商所建设的AI系统类似一个又一个的“烟囱”,“烟囱式”架构也就是垂直的体系结构。
每一个IT系统都有自己的存储和设备,以及独立的管理工具和数据库,不同的系统不能共享资源、不能交付和访问,形成了资源孤岛和信息孤岛。
由于不同企业的数据库模型设计和针对的目标有所不同,他们也无法直接交换、共享模型。
即便相关企业间的数据库可以融合,但受制于隐私、安全等问题,也绝不可如此为之。
有场景缺数据、有数据难共享。这是包括AI安防在内的诸多行业目前存在的普遍问题,也是阻碍AI普惠的最大痛点。
一方面,AI在安防行业的探索才刚刚开始;另一方面,做好AI所必须的数据养料有限且质量较差,不同数据源之间存在难以打破的壁垒。
除了少数几家拥有海量用户、具备产品和服务优势的巨无霸企业外,大多数中小型AI安防企业难以以一种合理、合法的方式跨越人工智能落地的数据鸿沟,或者需要付出巨大的成本来解决这一问题。
多位学术界、工业界领头人指出:从目前的研究进展来看,“联邦学习”技术可能是解决以上问题的最佳选择。
譬如A厂商有校园数据、B厂商有工厂数据、C厂商有社区数据,且这三家厂商都使用了联邦学习技术。
从业务层面出发,A、B、C这三家厂商便直接获得了两种能力:1、最快速地优化自身业务;2、最快速地拓展新业务。
最快速地优化自身业务表现在,平台每天会有若干个类似A厂商的企业向平台输入加密后的数据模型,而这些数据模型中有A厂商非常缺乏的其他数据信息,而A厂商便可根据这些数据去更新自己的算法模型。
最快速地拓展新业务表现在,A、B、C每家厂商都有各自构建好的模型,通过汇总去得到更大的数据模型,在不流通数据的情况下得到数据流通的最好效果,通过资源互补可以在最短时间内安全地获得对方的能力,去拓展新业务。
从隐私保护层面来看,通常智能摄像头产生的数据会被上传到后台服务器中,然后由部署在服务器上的神经网络模型根据收集到的大量数据进行训练得到一个模型,服务商根据这个模型来为用户提供服务。
这是一种集中式的模型训练方法,这种方式很难保证数据隐私安全。
而联邦学习就不再是让数据发送到后台,而是在每个企业自己的服务器上进行训练,并加密上传训练模型,后台会综合成千上万的用户模型后再反馈给用户改进方案。
其中一个典型应用案例,就是微众银行与极视角联合推出的中国首个视觉联邦学习系统。
以视频摄像头中的火焰识别为例,AI工程师们可能千辛万苦训练了一个火焰检测的识别模型,想要用在监控摄像头中,识别是否有燃烧现象,从而对火灾发生的可能性进行分析,实现火灾预警。
原有的AI算法可以比较准确地识别有明显大面积燃烧和明火发生的常见场景。然而,遇到打火机点出的火焰时,摄像头就有些“懵”了。
如果想让模型增强识别能力,传统的AI训练要求适用方能够提供一些数据样本,而这又出现了因网络带宽导致的算法准确率不高及数据隐私等问题。
图片来源:fedai.org
在联邦视觉系统中,依托本地建模,在保证各方数据不出本地的情况下,即可提升AI算法准确率。
在一次公开分享中,微众银行AI部门副总经理陈天健透露,“在‘联邦视觉系统’项目中,通过联邦学习技术,整体模型的性能提升了15%,且模型效果无损失,极大地提升了建模效率。”
信贷风控、医疗和安防的应用,都只是联邦学习赋能各领域的冰山一角。
未来包括金融、医疗、安防、零售、政务、工业等各行各业、各个场景都可以依据此技术实现降本增效、开源节流。
联邦学习的生态建设也在同步进行,只有多方合作、多方认可下的联邦学习才有望实现效益最大化。
如果你也想参与到人工智能学习和落地的最前沿,了解联邦学习的最新研究成果与应用情况,请持续关注杨强教授的公开课全文整理回顾,以及《联邦学习系列公开课》的其他课程。
雷锋网雷锋网雷锋网